var express = require('express')

var student = require('./student')

// 1.创建一个容器
var router = express.Router()

// 2.把路由都挂载到 router 路由容器中
router.get('/students', function(req, res){
	student.find(function(err, students){
		if (err) {
			return res.status(500).send('server error.')
		}
		var fruits = ['苹果', '香蕉', '橘子', '菠萝'];
		//students = students.sortObj(students, "id")
		if(students){
			students.sort(function(a,b){
				var x = a["id"]
				var y = b["id"]
				return y - x
			})
		}
		res.render('index.html', {
			title : '学生管理系统',
			fruits : fruits,
			students : students
		})
	})
})

router.get('/students/new', function(req, res){
	res.render('new.html', {
		title : '新增学生'
	})
})

router.post('/students/new', function(req, res){
	student.save(req.body, function(err){
		if (err) {
			return res.status(500).send('server error.')
		}
		res.redirect('/students')
	})
})

router.get('/students/edit', function(req, res){
	student.findById(req.query.id, function(err, student){
		if (err) {
			return res.status(500).send('server error.')
		}
		res.render('edit.html', {
			title : '编辑学生信息',
			student : student
		})
	})
})

router.post('/students/edit', function(req, res){
	student.updateById(req.body, function(err){
		if (err) {
			return res.status(500).send('server error.')
		}
		res.redirect('/students')
	})
})

router.get('/students/delete', function(req, res){
	student.deleteById(req.query.id, function(err){
		if (err) {
			return res.status(500).send('server error.')
		}
		res.redirect('/students')
	})
})

function sortObj(array, key) {
    return array.sort(function(a, b) {
        var x = a[key];
        var y = b[key];
        return x - y;
        //或者 return x > y ? 1 : (x < y ? -1 : 0);
    });
}

// 3.把 router 导出
module.exports = router


// module.exports = function(app){
// 	app.get('/students', function(req, res){
// 		res.render('index.html')
// 	})

// 	app.get('/students/new', function(req, res){
// 		res.send('new new new')
// 	})
// }